const s = {
  v: `
            attribute vec4 a_position;
            varying vec4 v_color;
            void main() {
                // 与顶点着色器起点保持一致
                v_color = a_position;
                gl_Position = a_position;
            }
        `,
  f: `
          precision mediump float;
          varying vec4 v_color;
          void main() {
          gl_FragColor = v_color;
        }
        `,
}
// 得到着色器程序
const program = getProgram(gl, s)
// 获取着色器程序中的变量
const a_position = gl.getAttribLocation(program, "a_position")
//TODO 创建顶点数据
const positionData = new Float32Array([-0.5, -0.5, 0.5, -0.5, 0.0, 0.5])
// 创建缓冲对象
const buffer = gl.createBuffer()
// 绑定缓冲对象
gl.bindBuffer(gl.ARRAY_BUFFER, buffer)
// 填充缓冲对象
gl.bufferData(gl.ARRAY_BUFFER, positionData, gl.STATIC_DRAW)
// 配置变量
gl.vertexAttribPointer(a_position, 2, gl.FLOAT, false, 0, 0)
// 启用变量
gl.enableVertexAttribArray(a_position)

// 绘制程序
gl.drawArrays(gl.TRIANGLE_FAN, 0, 3)
